/**
 * UpdateTree.h
 * Coyright (c) 2009 Xiaofeng Gu. All Rights Reserved.
 * Author : Xiaofeng Gu
 *
 * Creation Data : 2009/07/17
 */
#pragma once


#include "SKPipeline.h"


class CUpdateTree : public CSKDistributor
{
public:
	DECALRE_INTERFACE_PART(OnExecute);

	CUpdateTree(ISKPipeline* pNextProcess, CProcessDraft* pData)
		: CSKDistributor(pNextProcess, pData)
	{}

	virtual ~CUpdateTree() {}


protected:
	void					Initialize(HTREEITEM hParentItem, CFamily* pFamily);
	void					Initialize(HTREEITEM hParentItem, Knots* pKnots);
	void					Initialize(CKnot* pKnot, CTreeCtrl* pTree, HTREEITEM hItem);
	void					AddNode(CTreeCtrl* pTree, CTransNode* pNode, HTREEITEM hItem);

private:
	CTreeCtrl*						m_pTree;
};